<?php
/**
 * @copyright (C)2016-2099 Hnaoyun Inc.
 * @author XingMeng
 * @email hnxsh@foxmail.com
 * @date 2018年3月1日
 *  轮播图模型类
 */
namespace app\admin\model\content;

use core\basic\Model;

class SlideModel extends Model
{

    // 获取轮播图列表
    public function getList()
    {
        return parent::table('ay_slide')->where("acode='" . session('acode') . "'")
            ->order('sorting asc,id asc')
            ->page()
            ->select();
    }

    // 查找轮播图
    public function findSlide($field, $keyword)
    {
        return parent::table('ay_slide')->where("acode='" . session('acode') . "'")
            ->like($field, $keyword)
            ->order('sorting asc,id asc')
            ->page()
            ->select();
    }

    // 获取轮播图详情
    public function getSlide($id)
    {
        return parent::table('ay_slide')->where("id=$id")
            ->where("acode='" . session('acode') . "'")
            ->find();
    }

    // 获取分组
    public function getGid()
    {
        return parent::table('ay_slide')->distinct()
            ->where("acode='" . session('acode') . "'")
            ->order('gid')
            ->column('gid');
    }

    // 获取最大分组值
    public function getMaxGid()
    {
        return parent::table('ay_slide')->max('gid');
    }

    // 添加轮播图
    public function addSlide(array $data)
    {
        return parent::table('ay_slide')->autoTime()->insert($data);
    }

    // 删除轮播图
    public function delSlide($id)
    {
        return parent::table('ay_slide')->where("id=$id")
            ->where("acode='" . session('acode') . "'")
            ->delete();
    }

    // 修改轮播图
    public function modSlide($id, $data)
    {
        return parent::table('ay_slide')->autoTime()
            ->where("id=$id")
            ->where("acode='" . session('acode') . "'")
            ->update($data);
    }

    // 增加轮播组操作@mk-slidsort
    // 检查轮播组名
    public function checkSortName($where)
    {
        return parent::table('ay_slide_sort')->field('id')
            ->where($where)
            ->find();
    }

    // 获取轮播组最后一个code
    public function getSortLastCode()
    {
        return parent::table('ay_slide_sort')->order('id DESC')->value('id');
    }

    // 新增轮播组
    public function addSort(array $data)
    {
        return parent::table('ay_slide_sort')->autoTime()->insert($data);
    }

    // 获取轮播组列表
    public function getSortList()
    {
        return parent::table('ay_slide_sort')->where("acode='" . session('acode') . "'")
            ->order('sorting asc,id asc')
            ->select();
    }

    // 获取轮播组
    public function getSort($id)
    {
        return parent::table('ay_slide_sort')->where("acode='" . session('acode') . "'")
            ->where("id='$id'")
            ->find();
    }

    // 删除轮播组
    public function delSort($id)
    {
        return parent::table('ay_slide_sort')->where("acode='" . session('acode') . "'")
            ->where("id='$id'")
            ->delete();
    }

    // 修改轮播组
    public function modSort($id, $data)
    {
        $result = parent::table('ay_slide_sort')->autoTime()
            ->where("id='$id'")
            ->where("acode='" . session('acode') . "'")
            ->update($data);
        return $result;
    }
}